package com.cloudkinto.service.statistics;

import com.cloudkinto.entity.NotificationDo;
import com.baomidou.mybatisplus.extension.service.IService;

import com.cloudkinto.common.web.PageResult;
import com.cloudkinto.common.web.SingleResult;
import com.cloudkinto.service.statistics.vo.NotificationAddReq;
import com.cloudkinto.service.statistics.vo.NotificationDetailRes;
import com.cloudkinto.service.statistics.vo.NotificationPageRes;
import com.cloudkinto.service.statistics.vo.NotificationUpdateReq;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  service接口
 * </p>
 * @author zhangyy
 * @since 2020-06-19
 */
public interface NotificationService extends IService<NotificationDo> {

    SingleResult addInit();

    void add(NotificationAddReq req, Long userId);

    SingleResult updateInit(Long id);

    void update(NotificationUpdateReq updateVo, Long userId);

    int delete(Long id, Long userId);

    NotificationDetailRes detail(Long id);

    SingleResult pageInit();

    List<NotificationPageRes> getList(Map<String, String> map);

    SingleResult orderOutNotificationList(String type);

    PageResult getListPage(Map<String, String> map);
}
